home *** CD-ROM | disk | FTP | other *** search
- /********************************************************************
- FILENAME: DOOM.H
- AUTHOR : JAKE HILL
- DATE : 12/1/94
-
- Copyright (c) 1994 by Jake Hill:
- If you use any part of this code in your own project, please credit
- me in your documentation and source code. Thanks.
- ********************************************************************/
-
- #ifndef DOOM_H
- #define DOOM_H
-
- #undef line
-
- typedef struct
- {
- char signature[4];
- unsigned long num_entries;
- unsigned long foffset;
- } WAD_Header;
-
- typedef struct
- {
- unsigned long foffset;
- unsigned long size;
- char name[8];
- } Directory_Entry;
-
- typedef struct
- {
- short x;
- short y;
- } vertex;
-
- typedef struct
- {
- short from, to;
- short flags, special, tag;
- short side[2];
- } line;
-
- typedef struct
- {
- short tm_xoffset, tm_yoffset;
- char upper_tx[8];
- char lower_tx[8];
- char main_tx[8];
- short sector;
- } side;
-
- typedef struct
- {
- short floor_ht;
- short ceiling_ht;
- char floor_tx[8];
- char ceiling_tx[8];
- short light;
- short type;
- short trigger;
- } sector;
-
- typedef struct
- {
- short from, to;
- unsigned short angle;
- #ifdef __GNUC__
- short line;
- #else
- short xline;
- #endif
- short line_side;
- short line_offset;
- } seg;
- typedef seg segment;
-
- typedef struct
- {
- short num_segs;
- short first_seg;
- } ssector;
-
- typedef struct
- {
- short x, y;
- short dx, dy;
- short ry2,ry1,rx1,rx2;
- short ly2,ly1,lx1,lx2;
- unsigned short right,left;
- } node;
-
- typedef struct
- {
- short x, y;
- unsigned short angle;
- short thing_type;
- short attributes;
- } thing;
-
- typedef struct
- {
- short x_origin, y_origin;
- short columns, rows;
- short *blockpointers;
- } blockmap_header;
-
- typedef short blockmap;
-
- /****************************************************************
- * Additional structures created by me.
- ****************************************************************
- */
-
- typedef struct
- {
- char tex_code; /* Added by Johan */
- char type;
- char opaque;
- long y1, y2;
- long dy1, dy2;
- } wall;
-
- typedef struct
- {
- short tex_num;
- short hight;
- short start, end;
- } floor_run;
-
- typedef struct
- {
- short tex_num;
- short top, bottom;
- } wall_run;
-
- #endif
-